From: Carlos Soriano Date: Tue, 18 Feb 2014 14:47:47 +0000 (+0100) Subject: popupMenu: Use relative rotation for arrows X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~2741 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=a7283864e80048a8fe9d74c5500b84ee71cac779;p=gnome-shell.git popupMenu: Use relative rotation for arrows Currently the animation of the arrows doesn't take into account previous rotation. Since in a incoming patch we will use one arrow and rotate it to generate the four directions, we need that the animation use relative rotation. https://bugzilla.gnome.org/show_bug.cgi?id=720206 --- diff --git a/js/ui/popupMenu.js b/js/ui/popupMenu.js index dc3a9f96b..b51c7c795 100644 --- a/js/ui/popupMenu.js +++ b/js/ui/popupMenu.js @@ -874,7 +874,7 @@ const PopupSubMenu = new Lang.Class({ this.actor.height = 0; this.actor._arrowRotation = this._arrow.rotation_angle_z; Tweener.addTween(this.actor, - { _arrowRotation: 90, + { _arrowRotation: this.actor._arrowRotation + 90, height: naturalHeight, time: 0.25, onUpdateScope: this, @@ -887,7 +887,7 @@ const PopupSubMenu = new Lang.Class({ } }); } else { - this._arrow.rotation_angle_z = 90; + this._arrow.rotation_angle_z = this.actor._arrowRotation + 90; } }, @@ -907,7 +907,7 @@ const PopupSubMenu = new Lang.Class({ if (animate) { this.actor._arrowRotation = this._arrow.rotation_angle_z; Tweener.addTween(this.actor, - { _arrowRotation: 0, + { _arrowRotation: this.actor._arrowRotation - 90, height: 0, time: 0.25, onUpdateScope: this, @@ -921,7 +921,7 @@ const PopupSubMenu = new Lang.Class({ }, }); } else { - this._arrow.rotation_angle_z = 0; + this._arrow.rotation_angle_z = this.actor._arrowRotation - 90; this.actor.hide(); } },